home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
C64
/
T-TPUG Old Monthly Disks
/
(c)tn.d64
/
iron horse.c
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2007-02-04
|
18KB
|
437 lines
0 PRINT"[147][158]":POKE53281,0:POKE53280,0:F=INT(RND(-TI)*2)+1
10 DIM PR$(14),P1$(112,2),P$(112,2),D(14,2),R(16,2)
20 GOSUB4050:PRINT"[147]"
30 C$(1)="[153] [146]":C$(2)=" ":C$(3)="[153] ":C$(4)="[153] ":C$(6)="[153] "
40 ID=INT(RND(1)*2)+1:PRINT"ENTER TWO LETTERS OR INITALS TO STAND
50 [133]"FOR FIRST PLAYER OR TEAM: ";ID$(1):F[178][195](ID$(1)):[139]F[179][177]2[167]40
60 [153]"ENTER TWO LETTERS OR INITALS TO STAND
70 INPUT"FOR SECOND PLAYER OR TEAM: ";ID$(2):F=LEN(ID$(2)):IFF<>2THEN60
80 M(1)=150:M(2)=150:PR$(12)="PORTLAND":PR$(2)="BUTTE":PR$(6)="FARGO
90 PR$(7)[178]"GREEN BAY":PR$(4)[178]"DENVER":PR$(11)[178]"OMAHA":PR$(13)[178]"SAN FRAN.
100 PR$(3)="CHICAGO":PR$(1)="ALBQUE.":PR$(14)="TULSA":PR$(9)="L.A.
110 PR$(5)[178]"EL PASO":PR$(8)[178]"HOUSTON":PR$(10)[178]"MEMPHIS":[151]53281,1:[141]1000
120 [141]1240:[153]"":[153][163]13)"SETTING UP GAME
130 PRINTTAB(12)"ONE MINUTE PLEASE":F1=1:F2=8:FORF3=1TO14:RESTORE
140 FORF=F1TOF2:P1$(F,0)=PR$(F3):READP1$(F,1):P1$(F,2)=STR$(F3):NEXTF
150 F1=F1+8:F2=F2+8:NEXTF3:FORF=1TO112
160 GOSUB1240:S=INT(RND(1)*112)+1:PRINT"";TAB(16)"SHUFFLING
170 [139]P$(S,0)[178]""[167]190
180 [141]1240:[153]"";[163]16)" ":[137]160
190 P$(S,0)[178]P1$(F,0):P$(S,1)[178]P1$(F,1):P$(S,2)[178]P1$(F,2):[141]1240
200 [153]"";[163]16)" ":[130]F:S[178]0
210 [141]3000:ID[178][182](ID[171]3):F[178][181]([187](1)[172]20)[170]1
220 [145]F[137]2600,2650,2700,2750,2800,2850,2900,3100,3100,3100
230 F[178]F[171]10:[145]F[137]3100,3100,2600,2400,2400,2400,2400,2400,2150,2150
300 [139]R(1,0)[178]9[175]R(2,0)[178]9[175]R(3,0)[178]9[175]R(8,0)[178]9[167][141]350
310 [139]R(1,0)[178]9[175]R(2,0)[178]9[175]R(3,0)[178]9[175]R(9,0)[178]9[167][141]380
320 [139]R(4,0)[178]9[175]R(5,0)[178]9[175]R(6,0)[178]9[175]R(8,0)[178]9[167][141]410
330 [139]R(4,0)[178]9[175]R(5,0)[178]9[175]R(6,0)[178]9[175]R(9,0)[178]9[167][141]440
340 [137]210
350 [139]R(14,0)[178]9[175]R(15,0)[178]9[175]R(16,0)[178]9[167][141]470
360 [139]R(13,0)[178]9[175]R(10,0)[178]9[175]R(11,0)[178]9[175]R(12,0)[178]9[167][141]470
370 [142]
380 [139]R(10,0)[178]9[175]R(11,0)[178]9[175]R(12,0)[178]9[167][141]470
390 [139]R(13,0)[178]9[175]R(14,0)[178]9[175]R(15,0)[178]9[175]R(16,0)[178]9[167][141]470
400 [142]
410 [139]R(14,0)[178]9[175]R(15,0)[178]9[175]R(16,0)[178]9[167][141]470
420 [139]R(13,0)[178]9[175]R(10,0)[178]9[175]R(11,0)[178]9[175]R(12,0)[178]9[167][141]470
430 [142]
440 [139]R(10,0)[178]9[175]R(11,0)[178]9[175]R(12,0)[178]9[167][141]470
450 [139]R(13,0)[178]9[175]R(14,0)[178]9[175]R(15,0)[178]9[175]R(16,0)[178]9[167][141]470
460 [142]
470 [141]1230:[141]3000:[141]1240:[153]"";:[139]M(1)[177]M(2)[167]ID[178]1:[137]1980
480 ID[178]2:[137]1980
900 C[178]12:[141]1250:[141]3000:[141]1240:[153]"PRINT#TRACK SECTION DONE
905 PRINTTAB(10)"SPECULATION PAYOFF.":GOSUB1750
910 M(3)=D(R(R,1),1)^2*D(R(R,1),1):M(4)=D(R(R,2),1)^2*D(R(R,2),1)
915 IFM(3)>=125THENM(3)=125
920 IFM(4)>=125THENM(4)=125
925 M(1)=M(1)+INT(M(3)+M(4))
930 M(3)=D(R(R,1),2)^2*D(R(R,1),2):M(4)=D(R(R,2),2)^2*D(R(R,2),2)
935 IFM(3)>=125THENM(3)=125
940 IFM(4)>=125THENM(4)=125
945 M(2)=M(2)+INT(M(3)+M(4)):GOTO300
950 IFS>=112THENGOSUB1250:GOSUB1240:PRINT"";:JF=1:GOSUB2860:RETURN
960 S=S+1:GOSUB1240:PRINT"FIRST TRACK SECTION":PRINTTAB(10);
970 PRINT"BUILT HERE. BONUS: 1":PRINTTAB(10)"DEED ";P$(S,0);" LAND
980 [141]1750:A[178][197](P$(S,2)):D(A,ID)[178]D(A,ID)[170]1:A[178]0:[142]
1000 [129]F[178]1024[164]2023:[151]F,160:F3[178]F[170]54272:[151]F3,0:[130]F:[129]F[178]1[164]8:[135]F1:[130]
1010 C[178]14:[129]F7[178]1[164]16:[135]F1,F5,F6:[141]1030:[130]F7
1020 C[178]2:[129]F7[178]1[164]2:[135]F1,F5,F6:[141]1030:[130]F7:[137]1050
1030 [129]F4[178]1[164]F6:F2[178]F1[170]F5:[129]F[178]F1[164]F2:[151]F,160:F3[178]F[170]54272:[151]F3,C
1040 [130]F:F1[178]F1[170]40:[130]F4:[142]
1050 C[178]5:[141]1230:[153]"CONTPORT. ";C$(6);"CONTBUTTE";
1060 [153][163]21)"CONTFARGO ";C$(6);"CONTG. BAY":[153]"";C$(1);"STOP (null)TANTANTANTANRIGHT$";
1070 [153][163]13)C$(3);[163]24)C$(4)
1080 [153]C$(1);"STOP (null)";ID$(1);"'S(null) ";C$(4);[163]27)C$(3)
1090 [153]C$(1);"STOP (null)BANK(null)":[153]C$(1);"STOP (null)ROLL(null)"
1100 [153]C$(1);"STOP (null) IS (null)CONTDENVER";C$(6);C$(6);"CONTOMAHA"
1110 [153]C$(1);"STOP (null) (null)":[153]C$(2);"STOPMID$TANTANTANTAN(null)";[163]37)C$(2)
1120 [153]" SAN";[163]34)"CHI.":[153]"FRAN.":[153]C$(2);"STOP(null)TANTANTANTANRIGHT$";
1130 [153][163]37)C$(2):[153]C$(1);"STOP (null)";ID$(2);"'S(null)":[153]C$(1);
1140 [153]"STOP (null)BANK(null)CONTALBQUE";C$(6);C$(6);"CONTTULSA
1150 PRINTC$(1);"[144] [221]ROLL[221]":PRINTC$(1);"[144] [221] IS [221]
1160 [153]C$(1);"STOP (null) (null) ";C$(4);[163]27)C$(4):[153]C$(1);
1170 [153]"STOP MID$TANTANTANTAN(null)";[163]13)C$(3);[163]25)C$(3):[153]"CONT L.A.";
1180 [153][163]12)"EL PASOSTOP CONTHOUSTON";[163]34)"MEMP.
1190 PRINTTAB(6)C$(6);TAB(27)C$(6);"";:FORF=1TO4:PRINT"":NEXT:GOTO1210
1200 PRINT"[145][145]":FORF=1TOF1:PRINTTAB(F2)C$(1):NEXT:RETURN
1210 F1=8:F2=9:GOSUB1200:PRINT"":F1=6:F2=38:GOSUB1200
1220 F2=30:F1=8:GOSUB1200:F1=6:F2=38:GOSUB1200:RETURN
1230 F1=1354:F5=19:F6=8:GOSUB1030:RETURN
1240 PRINT"";TAB(10);:RETURN
1250 F1=1434:F5=19:F6=6:GOSUB1030:RETURN
1260 FORX=1TO10:GETY$:NEXT:RETURN
1270 Z=ASC(Z$)-64:IFZ<1ORZ>20ORZ=9ORZ=10ORZ=11ORZ=14ORZ=17ORZ=18THENA=1:RETURN
1280 IFZ>8THENZ=Z-3:IFZ>10THENZ=Z-1:IFZ>12THENZ=Z-2
1290 RETURN
1600 GOSUB1240:PRINT" INVALID SECTION.":PRINTTAB(12)"SELECT DIFFERENT
1610 [153][163]12)"TRACK SECTION":[141]1750
1620 [139]ZR[178][171]1[167]ZR[178]0:[141]1250:[141]1240:[137]2200
1630 [141]1250:[141]1240:[137]2430
1650 [141]1250:[141]1240:[153]" TRACK CAN AND MUST
1660 PRINTTAB(11)"BE REMOVED.":GOSUB1750:RETURN
1700 GOSUB1250:GOSUB1240:PRINT"YOUR BANKROLL IS NOT
1710 [153][163]10)"LARGE ENOUGH TO BUY":[153][163]10)"THIS DEED OF LAND.
1720 GOSUB1750:GOTO210
1750 GOSUB1240:PRINT"":PRINTTAB(17)"[213][192][192][192][192][192][201]
1760 [153][163]10)" PRESS (null)SHIFT(null) KEY ":[153][163]17)"MID$TANTANTANTANTAN(null)
1770 WAIT653,1:RETURN
1800 GOSUB1240:PRINT"THE BALANCE OF YOUR":PRINTTAB(10)"BANKROLL IS $";M(ID)
1810 PRINTTAB(10)"YOU MUST SELL LAND":GOSUB1750:FORX=1TO14
1820 IFD(X,ID)>0THENX=14:Y=1
1830 NEXTX:IFY=1THENY=0:GOTO1850
1840 GOTO1950
1850 GOSUB1250:GOSUB1240:PRINT"LAND SELLS FOR $5000
1855 [153][163]10)"PER DEED. ENTER 1ST":[153][163]10)"LETTER OF CITY OF
1860 GOSUB1260:PRINTTAB(10)"LAND TO BE SOLD:";
1865 GETZ$:IFZ$=""THEN1865
1870 GOSUB1270:IFZ=1THENA=0:GOTO1865
1875 PRINT" ";Z$:IFD(Z,ID)=0THEN1900
1880 D(Z,ID)=D(Z,ID)-1:M(ID)=M(ID)+5:ID=ABS(ID-3):D(Z,ID)=D(Z,ID)+1
1885 M(ID)=M(ID)-5:IFM(ID)<=0THENM(ID)=0
1890 ID=ABS(ID-3):GOSUB3000:RETURN
1900 GOSUB1250:GOSUB1240:PRINT"YOU DO NOT OWN ANY
1910 [153][163]10)"";PR$(Z);" LAND.":[141]1750:[137]1850
1950 [141]1250:[141]1240:[153]"AS YOUR BANKROLL
1960 PRINTTAB(10)"BALANCE IS $";M(ID);" AND
1970 [153][163]10)"YOU OWN NO PROPERTY":ID[178][182](ID[178]3)
1980 [153][163]20)"(null)TANTANTANTANTANTANTANTANRIGHT$":[153][163]10)"GAME OVER (null)";ID$(ID);" WINS!(null)
1990 PRINTTAB(20)"[202][192][192][192][192][192][192][192][192][203]":END
2150 C=2:GOSUB1230:PRINT"":GOSUB2950:PRINTTAB(22)"INDIAN
2160 [153][163]22)"ATTACK":[153][163]10)"1 TRACK SECTION MUST
2170 PRINTTAB(10)"BE REMOVED FROM ANY":PRINTTAB(10)"UNCOMPLETED SECTION.
2180 [141]1750:[141]1250:[141]1240
2200 [153]" ENTER 1ST LETTER OF":[153][163]10)"CITY OF STARTING
2205 PRINTTAB(10)"POINT:":PRINTTAB(15)"[213][192][201]IF NOT ABLE
2210 [153][163]10)"ENTER(null)\(null)TO REMOVE":[141]1260:[153][163]15)"MID$TAN(null)TRACK.
2215 GETZ$:IFZ$=""THEN2215
2220 IFZ$="\"THEN2235
2225 GOSUB1270:IFA=1THENA=0:GOTO2215
2230 X$=Z$:GOSUB1250:GOSUB1240:GOTO2250
2235 FORX=1TO16:IFR(X,0)>0ANDR(X,0)<9THENCH=1:X=16:GOSUB1650
2240 NEXTX:IFCH=1THENCH=0:GOSUB1250:GOSUB1240:GOTO2200
2245 GOTO210
2250 PRINT"ENTER 1ST LETTER OF":PRINTTAB(10)"CITY OF ENDING
2260 [141]1260:[153][163]10)"POINT: ";
2270 [161]Z$:[139]Z$[178]""[167]2270
2280 [141]1270:[139]A[178]1[167]A[178]0:[137]2270
2290 [153]Z$:Y$[178]Z$:ZR[178][171]1:RR[178]0:[137]3200
2400 Z1[178][181]([187](1)[172]10)[170]1:C[178]12:[141]1230:[153]"PRINT#":[141]2950
2405 [153][163]23)"PRINT#BUILD":[153][163]23)"TRACK":[153][163]11)"CONTRACT TO BUILD
2410 PRINTTAB(11)"TRACK COST$";Z1*1000:GOSUB1750
2415 IFM(ID)>=Z1THENGOTO2425
2420 GOSUB1250:GOSUB1800:GOSUB1250:GOSUB1240:GOTO2405
2425 M(ID)=M(ID)-Z1:GOSUB1250:GOSUB1240
2430 PRINT"ENTER 1ST LETTER OF":PRINTTAB(10)"CITY OF STARTING
2435 [141]1260:[153][163]10)"POINT: ";
2440 [161]Z$:[139]Z$[178]""[167]2440
2445 A[178]0:[141]1270:[139]A[178]1[167]A[178]0:[137]2440
2450 [153]Z$:X$[178]Z$:[153][163]10)"ENTER 1ST LETTER OF
2455 PRINTTAB(10)"CITY OF ENDING":GOSUB1260:PRINTTAB(10)"POINT: ";
2460 GETZ$:IFZ$=""THEN2460
2465 A=0:GOSUB1270:IFA=1THENA=0:GOTO2460
2470 PRINTZ$:Y$=Z$:RR=1:GOTO3200
2600 C=5:PRINT"";:GOSUB1230:GOSUB2950:PRINTTAB(23)"BONUS
2610 [153][163]10)"COLLECT PERFORMANCE":[153][163]10)"BONUS OF $10,000.
2620 M(ID)=M(ID)+10:GOSUB1750:GOTO210
2650 C=8:PRINT"[129]";:GOSUB1230:GOSUB2950:PRINTTAB(23)"LABOR
2660 [153][163]22)"DISPUTE":[153][163]10)"PAY $5000 BRIBE TO
2670 PRINTTAB(10)"UNION TO END DISPUTE":GOSUB1750
2680 IFM(ID)<5THENGOSUB1250:GOSUB1800:GOTO2650
2690 M(ID)=M(ID)-5:GOTO210
2700 C=8:PRINT"[129]";:GOSUB1230:GOSUB2950:PRINTTAB(23)"TRAIN
2710 [153][163]22)"ROBBERY":F[178][181]([187](1)[172]10)[170]1:[139]F[177][178]M(ID)[167]F[178]M(ID)
2720 [153][163]12)"$";F[172]1000;"TAKEN BY":[153][163]12)"TRAIN ROBBERS.
2730 M(ID)=M(ID)-F:GOSUB1750:GOTO210
2750 C=6:PRINT"";:GOSUB1230:GOSUB2950:PRINTTAB(21)"PROPERTY
2760 [153][163]19)"TAX PAYMENT":[153][163]10)"TAX RATE: $1000 FOR
2770 PRINTTAB(10)"EACH PROPERTY OWNED.":Y=0:FORX=1TO14:Y=Y+D(X,ID):NEXT
2780 GOSUB1750:IFY>M(ID)THENGOSUB1250:GOSUB1800:GOTO2750
2790 M(ID)=M(ID)-Y:GOTO210
2800 C=4:PRINT"[156]";:GOSUB1230:GOSUB2950:PRINTTAB(24)"ON
2810 [153][163]21)"VACATION":[153][163]14)"(LOSE TURN)
2820 GOSUB1750:GOTO210
2850 C=5:PRINT"";:GOSUB1230:GOSUB2950:PRINTTAB(21)"RENT DAY
2860 [153][163]10)"COLLECT $1000 FROM":[153][163]10)"BANK FOR EACH LAND
2870 PRINTTAB(10)"DEED OWNED.":Y=0:FORX=1TO14:Y=Y+D(X,ID):NEXT
2880 M(ID)=M(ID)+Y:GOSUB1750:IFJF=1THENJF=0:RETURN
2890 GOTO210
2900 C=1:PRINT"[144]";:GOSUB1230:GOSUB1240:PRINTID$(ID);"'S TURN:";TAB(22)"ROADBED
2910 [153][163]22)"SURVEY":[153][163]11)"COLLECT $5000 FROM
2920 PRINTTAB(11)"OPPONENT AS THEIR":PRINTTAB(11)"SHARE OF COST":GOSUB1750
2930 ID=ABS(ID-3):IFM(ID)<5THENGOSUB1230:GOSUB2950:GOSUB1800:ID=ABS(ID-3):GOTO2900
2940 M(ID)=M(ID)-5:ID=ABS(ID-3):M(ID)=M(ID)+5:GOTO210
2950 GOSUB1240:PRINT"";ID$(ID);"'S TURN:";:RETURN
3000 PRINT"[154] ";ID$(1);D(12,1);TAB(13)ID$(1);D(2,1);TAB(22)ID$(1);
3005 PRINTD(6,1);TAB(34)ID$(1);D(7,1)
3010 PRINT" ";ID$(2);D(12,2);TAB(13)ID$(2);D(2,2);TAB(22)ID$(2);
3015 PRINTD(6,2);TAB(34)ID$(2);D(7,2):PRINT"";TAB(8)ID$(1);D(4,1);
3020 PRINTTAB(28)ID$(1);D(11,1):PRINT"";TAB(8)ID$(2);D(4,2);TAB(28)ID$(2);D(11,2)
3025 M(1)=INT(M(1)):IFM(1)>=1000THENM$(1)=RIGHT$(STR$(M(1)),4):GOTO3035
3030 M$(1)=RIGHT$((" "+STR$(M(1))),3):M$(1)="$"+M$(1)
3035 PRINT"[144]";TAB(3)M$(1):PRINT" ";ID$(1);D(13,1);TAB(34)ID$(1);
3040 PRINTD(3,1):PRINT" ";ID$(2);D(13,2);TAB(34)ID$(2)D(3,2)
3045 PRINT"[154]";TAB(8)ID$(1);D(1,1);TAB(28)ID$(1);D(14,1)
3050 PRINT"";TAB(8)ID$(2);D(1,2);TAB(28)ID$(2);D(14,2)
3055 M(2)=INT(M(2)):IFM(2)>=1000THENM$(2)=RIGHT$(STR$(M(2)),4):GOTO3065
3060 M$(2)=RIGHT$((" "+STR$(M(2))),3):M$(2)="$"+M$(2)
3065 PRINT"[144]";TAB(3)M$(2)::PRINT"[154] ";ID$(1);D(9,1);TAB(13);
3070 PRINTID$(1);D(5,1);TAB(21)ID$(1);D(8,1);TAB(34)ID$(1);D(10,1)
3080 PRINT" ";ID$(2);D(9,2);TAB(13)ID$(2);D(5,2);TAB(21)ID$(2);
3090 PRINTD(8,2);TAB(34)ID$(2);D(10,2);"":RETURN
3100 IFS>=112THEN2600
3105 S=S+1:C=9:GOSUB1230:PRINT"[149]";:GOSUB2950:PRINTTAB(23)"LAND
3110 [153][163]22)"OPTION":[153][163]10)"1 DEED OF ";P$(S,0)
3115 [153][163]10)"LAND AVAILABLE FOR":[153][163]10)"$";P$(S,1);". DO YOU WISH
3120 PRINTTAB(18)"[213][192][201] [213][192][201]":PRINTTAB(10)"TO BUY? [221]Y[221] OR [221]N[221]
3125 [141]1260:[153][163]18)"MID$TAN(null) MID$TAN(null)
3130 GETX$:IFX$=""THEN3130
3135 IFX$="N"THEN210
3140 IFX$<>"Y"THEN3130
3145 X=VAL(P$(S,1))/1000:IFM(ID)<XTHENGOTO1700
3150 M(ID)=M(ID)-X:Y=VAL(P$(S,2)):D(Y,ID)=D(Y,ID)+1:GOTO210
3200 IF(X$="C"ORY$="C")AND(X$="G"ORY$="G")THENR=1:R(1,1)=3:R(1,2)=7:GOTO3285
3205 IF(X$="F"ORY$="F")AND(X$="G"ORY$="G")THENR=2:R(2,1)=6:R(2,2)=7:GOTO3285
3210 IF(X$="F"ORY$="F")AND(X$="O"ORY$="O")THENR=3:R(3,1)=6:R(3,2)=11:GOTO3285
3215 IF(X$="D"ORY$="D")AND(X$="O"ORY$="O")THENR=8:R(8,1)=4:R(8,2)=11:GOTO3285
3220 IF(X$="T"ORY$="T")AND(X$="O"ORY$="O")THENR=7:R(7,1)=14:R(7,2)=11:GOTO3285
3225 IF(X$="C"ORY$="C")AND(X$="M"ORY$="M")THENR=4:R(4,1)=3:R(4,2)=10:GOTO3285
3230 IF(X$="H"ORY$="H")AND(X$="M"ORY$="M")THENR=5:R(5,1)=8:R(5,2)=10:GOTO3285
3235 IF(X$="H"ORY$="H")AND(X$="T"ORY$="T")THENR=6:R(6,1)=8:R(6,2)=14:GOTO3285
3240 IF(X$="A"ORY$="A")AND(X$="T"ORY$="T")THENR=9:R(9,1)=1:R(9,2)=14:GOTO3285
3245 IF(X$="A"ORY$="A")AND(X$="E"ORY$="E")THENR=10:R(10,1)=1:R(10,2)=5:GOTO3285
3250 IF(X$="A"ORY$="A")AND(X$="D"ORY$="D")THENR=13:R(13,1)=1:R(13,2)=4:GOTO3285
3255 IF(X$="B"ORY$="B")AND(X$="D"ORY$="D")THENR=14:R(14,1)=2:R(14,2)=4:GOTO3285
3260 IF(X$="B"ORY$="B")AND(X$="P"ORY$="P")THENR=15:R(15,1)=2:R(15,2)=12:GOTO3285
3265 IF(X$="S"ORY$="S")AND(X$="P"ORY$="P")THENR=16:R(16,1)=13:R(16,2)=12:GOTO3285
3270 IF(X$="S"ORY$="S")AND(X$="L"ORY$="L")THENR=12:R(12,1)=13:R(12,2)=9:GOTO3285
3275 IF(X$="E"ORY$="E")AND(X$="L"ORY$="L")THENR=11:R(11,1)=5:R(11,2)=9:GOTO3285
3280 GOSUB1250:GOTO1600
3285 IFR(R,0)=9THEN3280
3290 IFR(R,0)=0ANDZR=-1THEN3280
3295 IFR(R,0)=0THENGOSUB1250:GOSUB950
3300 R(R,0)=R(R,0)+RR:A=54272:T=R
3305 RESTORE:FORG=1TO62:READG$:NEXTG
3310 ONTGOTO3400,3430,3460,3490,3520,3545,3580,3620
3320 T=T-8:ONTGOTO3680,3735,3770,3800,3830,3865,3900,3930
3330 IFZR=-1THENZR=0:R(R,0)=R(R,0)-1:RR=160:C=13:GOTO3340
3335 RR=219:C=0
3340 FORX=1TO2:POKET,RR:U=T+A:POKEU,O:T=T+T1:POKET,RR:U=T+A:POKEU,C
3345 T=T+T2:NEXTX:RETURN
3350 IFZR=-1THENZR=0:R(R,0)=R(R,0)-1:FORX=1TO4:RR(X)=160:NEXTX:GOTO3360
3355 FORX=1TO4:C(X)=0:NEXTX
3360 POKET,RR(1):U=T+A:POKEU,C(1):T=T+T1:POKET,RR(2):U=T+A:POKEU,C(2):T=T+T2
3365 POKET,RR(3):U=T+A:POKEU,C(3):T=T+T1:POKET,RR(4):U=T+A:POKEU,C(4):RETURN
3370 IFZR=-1THENZR=0:R(R,0)=R(R,0)-1:RR=160:C=0:C(1)=13:GOTO3380
3375 RR=219:C=0:C(1)=0
3380 POKET,RR:U=T+A:POKEU,C:T=T+T1:POKET,RR:U=T+A:POKEU,C:T=T+T2
3385 POKET,RR:U=T+A:POKEU,C(1):T=T+T1:POKET,RR:U=T+A:POKEU,C(1):RETURN
3400 IFR(1,0)=1THENT=1341:T1=1:T2=39:GOSUB3330:GOTO210
3410 IFR(1,0)=2THENT=1261:T1=1:T2=39:GOSUB3330:GOTO210
3420 R(1,0)=9:T=1181:T1=1:T2=39:GOSUB3335:GOTO900
3430 IFR(2,0)=1THENT=1095:T1=1:T2=-41:GOSUB3370:GOTO210
3440 IFR(2,0)=2THENT=1093:T1=1:T2=-41:GOSUB3370:GOTO210
3450 R(2,0)=9:T=1091:T1=1:T2=-41:GOSUB3375:GOTO900
3460 IFR(3,0)=1THENT=1168:T1=1:T2=39:FORX=1TO4:READRR(X),C(X):NEXT:GOSUB3350:GOTO210
3465 FORG=1TO8:READG$:NEXTG
3470 IFR(3,0)=2THENT=1170:T1=1:T2=39:FORX=1TO4:READRR(X),C(X):NEXT:GOSUB3350:GOTO210
3475 FORG=1TO8:READG$:NEXTG
3480 R(3,0)=9:T=1172:T1=1:T2=39:FORX=1TO4:READRR(X),C(X):NEXT:GOSUB3350:GOTO900
3490 IFR(4,0)=1THENT=1661:T1=1:T2=39:GOSUB3330:GOTO210
3500 IFR(4,0)=2THENT=1741:T1=1:T2=39:GOSUB3330:GOTO210
3510 R(4,0)=9:T=1821:T1=1:T2=39:GOSUB3335:GOTO900
3520 IFR(5,0)=1THENT=1935:T1=1:T2=39:GOSUB3370:GOTO210
3530 IFR(5,0)=2THENT=1933:T1=1:T2=39:GOSUB3370:GOTO210
3540 R(5,0)=9:T=1931:T1=1:T2=39:GOSUB3375:GOTO900
3545 FORG=1TO24:READG$:NEXTG
3550 IFR(6,0)=1THENT=1809:T1=1:T2=39:FORX=1TO4:READRR(X),C(X):NEXT:GOSUB3350:GOTO210
3555 FORG=1TO8:READG$:NEXTG
3560 IFR(6,0)=2THENT=1811:T1=1:T2=39:FORX=1TO4:READRR(X),C(X):NEXT:GOSUB3350:GOTO210
3565 FORG=1TO8:READG$:NEXTG
3570 R(6,0)=9:T=1813:T1=1:T2=39:FORX=1TO4:READRR(X),C(X):NEXT:GOSUB3350:GOTO900
3580 IFR(7,0)=1THENT=1375:T1=-1:T2=41:GOSUB3330:GOTO210
3590 IFR(7,0)=2THENT=1455:T1=-1:T2=41:GOSUB3330:GOTO210
3600 IFR(7,0)=3THENT=1535:T1=-1:T2=41:GOSUB3330:GOTO210
3610 R(7,0)=9:T=1615:T1=-1:T2=41:GOSUB3335:GOTO900
3620 IFR(8,0)=1THENT=1288:T1=1:T2=39:GOSUB3370:GOTO210
3630 IFR(8,0)=2THENT=1286:T1=1:T2=39:GOSUB3370:GOTO210
3640 IFR(8,0)=3THENT=1284:T1=1:T2=39:GOSUB3370:GOTO210
3650 IFR(8,0)=4THENT=1282:T1=1:T2=39:GOSUB3370:GOTO210
3660 IFR(8,0)=5THENT=1280:T1=1:T2=39:GOSUB3370:GOTO210
3670 R(8,0)=9:T=1278:T1=1:T2=39:GOSUB3375:GOTO900
3680 IFR(9,0)=1THENT=1728:T1=1:T2=-41:GOSUB3370:GOTO210
3690 IFR(9,0)=2THENT=1726:T1=1:T2=-41:GOSUB3370:GOTO210
3700 IFR(9,0)=3THENT=1724:T1=1:T2=-41:GOSUB3370:GOTO210
3710 IFR(9,0)=4THENT=1722:T1=1:T2=-41:GOSUB3370:GOTO210
3720 IFR(9,0)=5THENT=1720:T1=1:T2=-41:GOSUB3370:GOTO210
3730 R(9,0)=9:T=1718:T1=1:T2=-41:GOSUB3375:GOTO900
3735 FORG=1TO48:READG$:NEXTG
3740 IFR(10,0)=1THENT=1794:T1=1:T2=39:FORX=1TO4:READRR(X),C(X):NEXT:GOSUB3350:GOTO210
3745 FORG=1TO8:READG$:NEXTG
3750 IFR(10,0)=2THENT=1796:T1=1:T2=39:FORX=1TO4:READRR(X),C(X):NEXT:GOSUB3350:GOTO210
3755 FORG=1TO8:READG$:NEXTG
3760 R(10,0)=9:T=1798:T1=1:T2=39:FORX=1TO4:READRR(X),C(X):NEXT:GOSUB3350:GOTO900
3770 IFR(11,0)=1THENT=1914:T1=1:T2=39:GOSUB3370:GOTO210
3780 IFR(11,0)=2THENT=1912:T1=1:T2=39:GOSUB3370:GOTO210
3790 R(11,0)=9:T=1910:T1=1:T2=39:GOSUB3375:GOTO900
3800 IFR(12,0)=1THENT=1785:T1=-1:T2=41:GOSUB3330:GOTO210
3810 IFR(12,0)=2THENT=1705:T1=-1:T2=41:GOSUB3330:GOTO210
3820 R(12,0)=9:T=1625:T1=-1:T2=41:GOSUB3335:GOTO900
3830 IFR(13,0)=1THENT=1352:T1=1:T2=39:GOSUB3330:GOTO210
3840 IFR(13,0)=2THENT=1432:T1=1:T2=39:GOSUB3330:GOTO210
3850 IFR(13,0)=3THENT=1512:T1=1:T2=39:GOSUB3330:GOTO210
3860 R(13,0)=9:T=1592:T1=1:T2=39:GOSUB3335:GOTO900
3865 FORG=1TO72:READG$:NEXTG
3870 IFR(14,0)=1THENT=1154:T1=1:T2=39:FORX=1TO4:READRR(X),C(X):NEXT:GOSUB3350:GOTO210
3875 FORG=1TO8:READG$:NEXTG
3880 IFR(14,0)=2THENT=1156:T1=1:T2=39:FORX=1TO4:READRR(X),C(X):NEXT:GOSUB3350:GOTO210
3885 FORG=1TO8:READG$:NEXTG
3890 R(14,0)=9:T=1158:T1=1:T2=39:FORX=1TO4:READRR(X),C(X):NEXT:GOSUB3350:GOTO900
3900 IFR(15,0)=1THENT=1074:T1=1:T2=-41:GOSUB3370:GOTO210
3910 IFR(15,0)=2THENT=1072:T1=1:T2=-41:GOSUB3370:GOTO210
3920 R(15,0)=9:T=1070:T1=1:T2=-41:GOSUB3375:GOTO900
3930 IFR(16,0)=1THENT=1145:T1=-1:T2=41:GOSUB3330:GOTO210
3940 IFR(16,0)=2THENT=1225:T1=-1:T2=41:GOSUB3330:GOTO210
3950 R(16,0)=9:T=1305:T1=-1:T2=41:GOSUB3335:GOTO900
4000 PRINT"":FORR=1TO20:PRINT:NEXT:PRINTTAB(19)"[213][192][201] [213][192][201]
4010 [153][163]13)"PRESS (null)Y(null)OR(null)N(null)":[153][163]19)"MID$TAN(null) MID$TAN(null)":[142]
4050 [153]"LOAD";[163]14)"WELCOME TO
4060 PRINTTAB(9)"[162][162][162][187]";TAB(21)"[172]";:FORF=23TO38:PRINT"[162]";:NEXT:PRINT"[187]
4070 [153]" (null) WAITSTEP GETNEWNEWWAITGET";[163]23)" *NEWRND*NEWRND*NEWRND*NEWRND "
4080 [153][163]4)" ";[163]9)"GETWAIT GET";[163]23)" WAITGET GETWAITGET GETWAITGET GETWAITGET GET "
4090 [153]" *NEW WAITNEWRND*RNDGETWAITNEWNEWGET*NEWNEWNEWNEWNEWNEWRND LOGWAITNEWCOSLOGWAITNEWCOSLOGWAITNEWCOSLOGWAITNEWCOS "
4100 [153]" GET GET WAITGET "
4110 [153]" GET THE GET IRON WAITGET HORSE "
4120 [153]" STEP GET WAITGETGET WAITGET
4130 PRINT"[169] [146][209][209] [209][192][209][188][162][146][209][209] [209][209][162][162][146] [209][209] [209][209] [162]
4140 [153][163]10)"BY: JAMES K. FOSTER":[153][163]15)"BOX 185
4150 PRINTTAB(15)"BELLA COOLA, B.C.":PRINTTAB(15)"V0T 1C0
4160 [153][163]7)"WOULD YOU LIKE INSTRUCTIONS?":[141]4000
4170 [161]Z$:[139]Z$[178]""[167]4170
4180 [139] Z$[179][177]"Y"[167] [142]
4190 [153]"LOADTHE IRON HORSE IS A TWO PLAYER, BOARD
4200 PRINT"STYLE, STRATEGY GAME FOR THE C-64.
4210 [153]"JOURNEY BACK IN TIME TO THE DAYS WHEN
4220 PRINT"SELDOM WAS HEARD, A DISCOURAGING WORD,
4230 [153]"AND WHERE THE BUFFALO ROAMED. THE TIME
4240 PRINT"IS THE LATE 1800'S AND THE PLACE IS THE
4250 [153]"AMERICAN WEST FROM CHICAGO TO
4260 PRINT"SAN FRANCISCO. PUT ON YOUR TOP HAT AND
4270 [153]"YOUR FROCK COAT AND TRY TO MAKE YOUR
4280 PRINT"FORTUNE.":PRINT"THE OBJECT OF THE IRON HORSE IS TO
4290 [153]"AMASS A LARGER AMOUNT OF MONEY THAN
4300 PRINT"YOUR OPPONENT, WHILE BUILDING THE FIRST
4310 [153]"RAILROAD FROM CHICAGO TO SAN FRANCISCO.
4320 PRINT"EACH PLAYER STARTS THE GAME WITH
4330 [153]"$150,000. THE SCOREBOARD ONLY DIPLAYS
4340 PRINT"YOUR BANKROLL TO THE NEAREST $1000.
4350 [153][163]12)"MORE INFORMATION?":[141]4000
4360 [161]Z$:[139]Z$[178]""[167]4360
4370 [139]Z$[179][177]"Y"[167][142]
4380 [153]"LOADAS THE GAME PROGRESSES, MONEY IS MADE
4390 PRINT"FROM PERFORMANCE BONUSES AND FROM LAND
4400 [153]"SPECULATION. MONEY IS LOST OR SPENT
4410 PRINT"ON BRIBES, LAYING RAILWAY TRACK,
4420 [153]"ROBBERY, AND OTHER SURPRISES.
4430 PRINT"THE GAME BOARD IS LAYED OUT WITH 14
4440 [153]"CITIES: ALBUQUERQUE (ALBQUE), BUTTE,
4450 PRINT"CHICAGO (CHI.), DENVER, EL PASO, FARGO
4460 [153]"GREEN BAY (G.BAY),HOUSTON, LOS ANGELES
4470 PRINT"(L.A.), MEMPHIS (MEMP.), OMAHA,
4480 [153]"PORTLAND (PORT.), SAN FRANCISCO (SAN
4490 PRINT"FRAN), AND TULSA. TRACK CAN BE LAYED
4500 [153]"BETWEEN ANY TWO CITIES CONNECTED WITH
4510 PRINT"A GREEN PATH. NOT ALL CITIES CONNECT
4520 [153]"TO EACH OTHER, AND THERE ARE SEVERAL
4530 PRINT"POSSIBLE ROUTES TO FOLLOW.":PRINTTAB(12)"MORE INFORMATION?":GOSUB4000
4540 GETZ$:IFZ$=""THEN4540
4550 IFZ$<>"Y"THEN RETURN
4560 PRINT"[147]YOU CAN LAY RAILWAY TRACK ALONG ANY
4570 [153]"GREEN PATH AND IT IS NOT NECESSARY TO
4580 PRINT"COMPLETE A SECTION BEFORE STARTING
4590 [153]"BETWEEN OTHER CITIES. THERE IS A BONUS
4600 PRINT"FOR LAYING THE FIRST TRACK SECTION
4610 [153]"BETWEEN TWO CITIES.":[153]"YOU ARE GIVEN THE OPTION TO PURCHASE
4620 PRINT"DEEDS OF LAND A VARIOUS TIMES. PRICES
4630 [153]"RANGE FROM $1000 TO $8000. WHEN TWO
4640 PRINT"CITIES ARE CONNECTED, IT IS TIME TO
4650 [153]"COLLECT LAND SPECULATION PAYOFF. EACH
4660 PRINT"EACH PLAYER RECEIVES FOR BOTH CITIES
4670 [153]"CONNECTED, ON A PER CITY BASIS:
4680 PRINTTAB(3)"1 DEED OWNED - $1000
4690 [153][163]3)"2 DEEDS OWNED - $2000 PER DEED
4700 PRINTTAB(3)"3 DEEDS OWNED - $9000 PER DEED
4710 [153][163]3)"4 DEEDS OWNED - $16000 PER DEED
4720 PRINTTAB(3)"5+ DEEDS OWNED - $25000 PER DEED
4730 [153][163]12)"MORE INFORMATION?":[141]4000
4740 [161]Z$:[139]Z$[178]""[167]4740
4750 [139]Z$[179][177]"Y"[167] [142]
4760 [153]"LOADMAXIMUM SPECULATION PAYOUT IS $125000
4770 PRINT"PER CITY PER PLAYER. THERE ARE 8 LAND
4780 [153]"DEEDS AVAILABLE FOR EACH OF THE 14
4790 PRINT"CITIES.":PRINT"IF YOU HAVE NOT MANAGED YOUR MONEY
4800 [153]"PROPERLY, OR IF YOU HAVE HAD A RUN OF
4810 PRINT"BAD LUCK, AND YOUR BANKROLL IS ZERO
4820 [153]"THEN YOU WILL HAVE TO SELL DEEDS
4830 PRINT"OF LAND TO RAISE THE REQUIRED CAPITOL.
4840 [153]"FOR EACH DEED OF LAND SOLD (YOUR
4850 PRINT"CHOICE), YOUR OPPONENT WILL PAY YOU
4860 [153]"$5000. IF YOUR OPPONENT IS ALSO BROKE
4870 PRINT"THEN THE BANK WILL PAY YOU, BUT YOUR
4880 [153]"OPPONENT STILL RECEIVES THE LAND DEED.
4890 PRINTTAB(12)"MORE INFORMATION?":GOSUB4000
4900 GETZ$:IFZ$=""THEN4900
4910 IFZ$<>"Y"THEN RETURN
4920 PRINT"[147]DURING THE COURSE OF PLAY YOU WILL BE
4930 [153]"ATTACKED BY INDIANS, AND THIS CAN BE
4940 PRINT"BOTH A BLESSING AND A CURSE. WHEN THE
4950 [153]"INDIANS ATTACK THEY DESTROY TRACK, BUT
4960 PRINT"YOU DETERMINE WHICH TRACK SECTION TO
4970 [153]"REMOVE. TRACK CAN ONLY BE REMOVED FROM
4980 PRINT"SECTIONS UNDER CONSTRUCTION. SECTIONS
4990 [153]"NOT STARTED OR COMPLETED ARE NOT
5000 PRINT"ELIGIBLE FOR AN INDIAN ATTACK. IF
5010 [153]"TRACK IS REMOVED FROM A SECTION
5020 PRINT"CONTAINING ONLY ONE SECTION, THIS
5030 [153]"SECTION AGAIN BECOMES ELIGIBLE FOR THE
5040 PRINT"INITIAL TRACK BONUS. THIS PLAY CAN BE
5050 [153]"USED TO SLOW DOWN YOUR OPPONENT FROM
5060 PRINT"COMPLETING A SECTION WHERE THEY HAVE
5070 [153]"THE ADVANTAGE IN LAND DEEDS OWNED.
5080 PRINT"WHILE THIS GAME IS SET UP TO BE PLAYED
5090 [153]"BY 2 PLAYERS, IT CAN BE PLAYED BY MORE
5100 PRINT"BY USING TEAMS. ARE YOU READY TO BEGIN?":GOSUB4000
5110 GETZ$:IFZ$=""THEN5110
5120 IFZ$="Y"THENRETURN
5130 END
6000 DATA1000,2000,3000,4000,5000,6000,7000,8000
6010 DATA1024,5,3,1036,5,3,1045,5,3,1057,5,3,1232,3,1,1252,3,1,1272,5,2,1290,5
6020 DATA2,1672,5,2,1690,5,2,1752,3,1,1772,3,1,1864,5,3,1876,6,3,1884,6,3,1897
6030 DATA5,3,1424,5,4,1457,5,4
6040 DATA219,13,202,13,202,0,219,0,219,13,219,13,219,0,219,13,219,0,201,0,201
6050 DATA13,219,13,213,0,219,0,219,13,213,13,219,13,219,13,219,13,219,0
6060 DATA203,13,219,13,219,0,203,0,219,13,202,13,202,0,219,0,219,13,219,13
6070 DATA219,0,219,13,219,0,201,0,201,13,219,13,213,0,219,0,219,13,213,13
6080 DATA219,0,219,13,219,13,219,13,203,13,219,13,219,0,203,0